x86: increase MAX_LOCAL_APIC
authorKeir Fraser <keir@xen.org>
Wed, 15 Dec 2010 11:55:48 +0000 (11:55 +0000)
committerKeir Fraser <keir@xen.org>
Wed, 15 Dec 2010 11:55:48 +0000 (11:55 +0000)
commit613407d5903e76e51f3573b3a465b064cb390331
tree0a706d4769d40163eef83a1822e262e637cd7b92
parent06e127fc275cd524a0f1dc8e2fa974de46619c10
x86: increase MAX_LOCAL_APIC

otherwise apicid_to_node[MAX_LOCAL_APIC] will be overrun if apicid >
255. After patch, the mapping get right.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Make this and also MAX_MADT_ENTRIES loosely depend on NR_CPUS. Tie
MAX_APICS to MAX_LOCAL_APIC. Fix initializer of x86_acpiid_to_apicid[]
to match the array member type of u32, as well as all checks in
readers of this array and x86_cpu_to_apicid[].

While the adjustment to xen_vcpu_physid_to_x86_{acpi,apic}id() is not
backward compatible, I think it should still be done this way as the
former reserving of values beyond 0xff should never have been part of
the interface. If considered impossible, a second best solution would
appear to be to make the macros depend on __XEN_INTERFACE_VERSION__.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/arch/x86/acpi/boot.c
xen/arch/x86/acpi/cpu_idle.c
xen/arch/x86/smpboot.c
xen/include/asm-x86/acpi.h
xen/include/asm-x86/numa.h
xen/include/public/vcpu.h